{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 3.3 Bayes 线性回归"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import scipy as sp\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "之前的讨论中，我们使用统计上的极大似然估计的方法来找到模型的参数，我们看到，为了得到较好的结果，我们需要控制模型的复杂度，即选择一个合适的基函数个数；或者通过加上正则项来解决。\n",
    "\n",
    "通常模型的复杂性不能通过极大似然函数来单独决定，因为极大似然估计通常都伴随着过拟合的现象，我们可以考虑使用独立的验证集来控制模型复杂度，但这通常是非常昂贵的。\n",
    "\n",
    "我们考虑用 Bayes 的角度来看待线性回归的问题。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3.3.1 参数的分布 "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "考虑单目标变量 $t$ 的情况，我们先考虑给我们的参数 $\\bf w$ 加上一个先验分布，这里我们先认为噪音的参数 $\\beta$ 是已知的。在 $N$ 个数据点的情况下，之前我们得到 $p(\\mathsf t|\\mathbf w)$ 的分布：\n",
    "\n",
    "$$\n",
    "p(\\mathsf t|\\mathbf{X,w},\\beta) = \\prod_{n=1}^N \\mathcal N(t_n|\\mathbf w^\\top\\mathbf \\phi(\\mathbf x_n),\\beta^{-1})\n",
    "$$\n",
    "\n",
    "是一个 $\\bf w$ 二次型的指数形式，因此，我们考虑使用高斯分布的先验：\n",
    "\n",
    "$$\n",
    "p(\\mathbf w)=\\mathcal N(\\mathbf w|\\mathbf m_0,\\mathbf S_0)\n",
    "$$\n",
    "\n",
    "利用${\\rm posterior} \\propto {\\rm prior} \\times {\\rm likelihood}$ 以及共轭性，我们知道后验分布也是一个高斯分布：\n",
    "\n",
    "$$\n",
    "p(\\mathbf w|\\mathsf t)=\\mathcal N(\\mathbf w|\\mathbf m_N,\\mathbf S_N)\n",
    "$$\n",
    "\n",
    "不难计算得到：\n",
    "\n",
    "$$\n",
    "\\begin{aligned}\n",
    "\\mathbf m_N & = \\mathbf S_N(\\mathbf S_0^{-1}\\mathbf m_0+\\beta\\mathbf\\Phi^\\top\\mathsf t) \\\\\n",
    "\\mathbf S_N^{-1} & = \\mathbf S_0^{-1} + \\beta\\mathbf{\\Phi^\\top\\Phi}\n",
    "\\end{aligned}\n",
    "$$\n",
    "\n",
    "其中\n",
    "\n",
    "$$\n",
    "\\mathbf\\Phi = \\begin{pmatrix}\n",
    "\\mathbf\\phi(\\mathbf x_1)^\\top \\\\\n",
    "\\mathbf\\phi(\\mathbf x_2)^\\top \\\\\n",
    "\\vdots \\\\\n",
    "\\mathbf\\phi(\\mathbf x_N)^\\top \\\\\n",
    "\\end{pmatrix}  = \\begin{pmatrix}\n",
    "\\phi_0(\\mathbf x_1) & \\phi_1(\\mathbf x_1) & \\cdots & \\phi_{M-1}(\\mathbf x_1) \\\\\n",
    "\\phi_0(\\mathbf x_2) & \\phi_1(\\mathbf x_2) & \\cdots & \\phi_{M-1}(\\mathbf x_2) \\\\\n",
    "\\vdots & \\vdots  & \\ddots & \\vdots\\\\\n",
    "\\phi_0(\\mathbf x_N) & \\phi_1(\\mathbf x_N) & \\cdots & \\phi_{M-1}(\\mathbf x_n)\\\\\n",
    "\\end{pmatrix}\n",
    "$$\n",
    "\n",
    "在高斯分布的情况下，均值就是众数，因此，最大后验给出：\n",
    "\n",
    "$$\n",
    "\\mathbf w_{MAP} = \\mathbf m_N\n",
    "$$\n",
    "\n",
    "如果我们考虑一个无限宽的先验：$\\mathbf S_0 = \\alpha\\mathbf I, \\alpha\\to 0$，那么我们的最大后验结果就是极大似然的结果；类似的，如果 $N=0$，那么后验分布就是先验分布，与之前的讨论类似，我们可以将这个模型改成在线的。\n",
    "\n",
    "如果我们考虑一个零均值的各向同性的先验：\n",
    "\n",
    "$$\n",
    "p(\\mathbf w|\\alpha) = \\mathcal N(\\mathbf 0,\\alpha\\mathbf I)\n",
    "$$\n",
    "\n",
    "我们有：\n",
    "\n",
    "$$\n",
    "\\begin{aligned}\n",
    "\\mathbf m_N & = \\beta\\mathbf S_N\\mathbf\\Phi^\\top\\mathsf t \\\\\n",
    "\\mathbf S_N^{-1} & = \\alpha\\mathbf I + \\beta\\mathbf{\\Phi^\\top\\Phi}\n",
    "\\end{aligned}\n",
    "$$\n",
    "\n",
    "此时，后验分布的对数为：\n",
    "\n",
    "$$\n",
    "\\ln p(w|t) = \\underbrace{-\\frac{\\beta}{2}\\sum_{n=1}^N \\{t_n-\\mathbf{w^\\top\\phi(x}_n)\\}^2}_{\\rm likelihood} - \\underbrace{\\frac{\\alpha}{2} \\mathbf{w^\\top w}}_{\\rm prior} + {\\rm const}\n",
    "$$\n",
    "\n",
    "因此，在这种情况下，最大后验分布，相当于加了一个二范数正则的最小二乘，正则系数 $\\lambda = \\alpha/\\beta$。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7faac84d8590>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from scipy.stats import uniform, norm\n",
    "from matplotlib.mlab import bivariate_normal\n",
    "from scipy.stats import multivariate_normal\n",
    "from numpy import linalg\n",
    "\n",
    "a0, a1 = -0.3, 0.5\n",
    "bt = 25.0\n",
    "s = np.sqrt(1.0 / bt)\n",
    "ap = 2.0\n",
    "\n",
    "xx = uniform.rvs(loc=-1, scale=2, size=(20,))\n",
    "tt = a0 + a1 * xx + norm.rvs(loc=0, scale=s, size=(20,))\n",
    "\n",
    "_, axes = plt.subplots(4, 3, figsize=(8, 11))\n",
    "\n",
    "x, y = np.mgrid[-1:1:.02, -1:1:.02]\n",
    "\n",
    "nums = [0, 1, 2, 20]\n",
    "\n",
    "phi = np.vstack((np.ones(20), xx)).T\n",
    "\n",
    "for idx in range(4):\n",
    "    n = nums[idx]\n",
    "    if idx == 0:\n",
    "        axes[idx][0].axis(\"off\")\n",
    "        axes[idx][0].set_title(\"likelihood\", fontsize=\"x-large\")\n",
    "        axes[idx][1].set_title(\"prior/posterior\", fontsize=\"x-large\")\n",
    "        axes[idx][2].set_title(\"dataspace\", fontsize=\"x-large\")\n",
    "    else:\n",
    "        z1 = 1 / np.sqrt(2*np.pi) / s *np.exp(-(tt[n-1] - x - y * xx[n-1]) ** 2 / 2 / s ** 2) \n",
    "        axes[idx][0].contourf(x, y, z1)\n",
    "        axes[idx][0].set_xticks([-1, 0, 1])\n",
    "        axes[idx][0].set_ylim(-1, 1)\n",
    "        axes[idx][0].set_yticks([-1, 0, 1])\n",
    "        axes[idx][0].text(0.5, -1.2, '$w_0$', fontsize='xx-large')\n",
    "        axes[idx][0].text(-1.4, 0.5, '$w_1$', fontsize='xx-large')\n",
    "        \n",
    "    S = linalg.inv(ap * np.eye(2) + bt * np.dot(phi[:n].T, phi[:n]))\n",
    "    mu = bt * np.dot(np.dot(S, phi[:n].T), tt[:n])\n",
    "    \n",
    "    z = bivariate_normal(x, y, \n",
    "                         mux=mu[0], muy=mu[1],\n",
    "                         sigmax=np.sqrt(S[0][0]), \n",
    "                         sigmay=np.sqrt(S[1][1]), \n",
    "                         sigmaxy=S[0][1])\n",
    "    ww = multivariate_normal.rvs(mean=mu,\n",
    "                                 cov=S, \n",
    "                                 size=6)\n",
    "    ww0, ww1 = ww[:, 0], ww[:, 1]\n",
    "    for idy in range(6):\n",
    "        axes[idx][2].plot(x, ww0[idy] + ww1[idy] * x, 'r')\n",
    "    \n",
    "    axes[idx][1].contourf(x, y, z)\n",
    "    axes[idx][1].set_xticks([-1, 0, 1])\n",
    "    axes[idx][1].set_ylim(-1, 1)\n",
    "    axes[idx][1].set_yticks([-1, 0, 1])\n",
    "    axes[idx][1].text(0.5, -1.2, '$w_0$', fontsize='xx-large')\n",
    "    axes[idx][1].text(-1.4, 0.5, '$w_1$', fontsize='xx-large')\n",
    "\n",
    "    axes[idx][2].plot(xx[:n], tt[:n], 'o')\n",
    "    axes[idx][2].set_xticks([-1, 0, 1])\n",
    "    axes[idx][2].set_ylim(-1, 1)\n",
    "    axes[idx][2].set_yticks([-1, 0, 1])\n",
    "    axes[idx][2].text(0.5, -1.2, '$x$', fontsize='xx-large')\n",
    "    axes[idx][2].text(-1.4, 0.5, '$y$', fontsize='xx-large')\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "我们考虑一个单变量 $x$，单目标 $t$ 的情况，并使用一个线性模型：$y(x,\\mathbf w)=w_0+w_1x$。我们使用函数 $f(x,\\mathbf a)=a_0+a_1x$ 生成一组 $x\\in U[-1,1]$ 之间的数据，并加上零均值 $\\beta=25$ 的高斯噪声，这里 $a_0 = -0.3, a_1 = 0.5$，令 $\\alpha=2$，考虑数据点不断增加时，后验分布的变化情况，如上图所示。\n",
    "\n",
    "- 第一行\n",
    "  - 第 2 列：先验分布\n",
    "  - 第 3 列：从先验分布中随机选取 6 组 $\\bf w$ 值得到的曲线\n",
    "- 第二行：\n",
    "  - 第 1 列：第 1 个数据点的似然函数 $p(t_1|x_1, \\bf w)$\n",
    "  - 第 2 列：加入第 1 个数据点的后验分布\n",
    "  - 第 3 列：从后验分布中随机选取 6 组 $\\bf w$ 值得到的曲线\n",
    "- 第三行：\n",
    "  - 第 2 列：第 2 个数据点的似然函数 $p(t_2|x_2, \\bf w)$\n",
    "  - 第 2 列：加入第 2 个数据点的后验分布\n",
    "  - 第 3 列：从后验分布中随机选取 6 组 $\\bf w$ 值得到的曲线\n",
    "- 第四行：\n",
    "  - 第 2 列：第 20 个数据点的似然函数 $p(t_{20}|x_{20}, \\bf w)$\n",
    "  - 第 2 列：加入第 20 个数据点的后验分布\n",
    "  - 第 3 列：从后验分布中随机选取 6 组 $\\bf w$ 值得到的曲线\n",
    "  \n",
    "当然我们可以一般化高斯分布先验为（高斯分布对应于 $q=2$）：\n",
    "\n",
    "$$\n",
    "p(\\mathbf w|\\alpha)=\\left[\\frac{q}{2}\\left(\\frac{\\alpha}{2}\\right)^{1/q} \\frac{1}{\\Gamma(1/q)}\\right]^M \\exp\\left(-\\frac{\\alpha}{2}\\sum_{j=1}^M |w_j|^q\\right)\n",
    "$$\n",
    "\n",
    "此时 MAP 对应于更一般的正则项形式：\n",
    "\n",
    "$$\n",
    "\\frac{1}{2}\\sum_{n=1}^N \\{t_n-\\mathbf w^\\top\\mathbf \\phi(\\mathbf x_n)\\}^2 + \\frac \\lambda 2 \\sum_{j=1}^M |w_j|^q\n",
    "$$\n",
    "\n",
    "在这种情况下，其 MAP 的值不一定为均值。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3.3.2 预测值的分布"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "通常我们更关心对一个新输入 $\\bf x$，其预测值 $t$ 的分布：\n",
    "\n",
    "$$\n",
    "p(t|{\\bf x}, {\\sf t}, \\alpha, \\beta) = \\int p(t|\\mathbf{x,w}, \\beta) p({\\bf w}|{\\sf t}, \\alpha, \\beta)d{\\bf w}\n",
    "$$\n",
    "\n",
    "因为 \n",
    "$$\n",
    "\\begin{aligned}\n",
    "p(t|\\mathbf{x,w},\\beta)&=\\mathcal N(t|y(\\mathbf{x,w}),\\beta^{-1}) \\\\\n",
    "p(\\mathbf w|\\mathsf t, \\alpha, \\beta)&=\\mathcal N(\\mathbf w|\\mathbf m_N,\\mathbf S_N)\n",
    "\\end{aligned}\n",
    "$$ \n",
    "\n",
    "都是高斯分布，考虑：\n",
    "\n",
    "$$\n",
    "y(\\mathbf{x,w}) = \\mathbf{w^\\top \\phi(x)}\n",
    "$$\n",
    "\n",
    "我们有：\n",
    "\n",
    "$$\n",
    "p(t|{\\bf x}, {\\sf t}, \\alpha, \\beta) = \\int \\mathcal N(t|\\mathbf{w^\\top \\phi(x)},\\beta^{-1}) \\mathcal N(\\mathbf w|\\mathbf m_N,\\mathbf S_N)d{\\bf w} \n",
    "$$\n",
    "\n",
    "对比之前[2.3.3](../Chap-02-Probability-Distributions/02-03-The-Gaussian-Distribution.ipynb#结论)节的的结论（给定 $p(x)$ 和 $p(y|x)$ 求 $p(y)$，这里 $\\bf w$ 相当于 $x$，$t$ 相当于 $y$），我们有：\n",
    "\n",
    "$$\n",
    "p(t|{\\bf x}, {\\sf t}, \\alpha, \\beta) =\\mathcal N(t|\\mathbf m_N^\\top \\mathbf{\\phi(x)}, \\sigma^2_N({\\bf x}))\n",
    "$$\n",
    "\n",
    "其中\n",
    "\n",
    "$$\n",
    "\\sigma^2_N({\\bf x}) = \\frac{1}{\\beta} + \\mathbf{\\phi(x)}^\\top \\mathbf S_N \\mathbf{\\phi(x)}\n",
    "$$\n",
    "\n",
    "方差的第一部分表示数据中的噪声，第二部分反映了参数 $\\bf w$ 的不确定性。\n",
    "\n",
    "一半来说，当有新的数据点进来了，后验分布 $p(\\mathbf w|\\mathsf t, \\alpha, \\beta)$ 变得更窄，参数 $\\bf w$ 的不确定性减小，从而有\n",
    "\n",
    "$$\n",
    "\\sigma^2_{N+1}({\\bf x}) \\leq \\sigma^2_N({\\bf x})  \n",
    "$$\n",
    "\n",
    "当 $N\\to\\infty$ 是，第二项趋于 0，从而方差趋于 $\\frac{1}{\\beta}$。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7faac44bf390>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "def phi(x, M):\n",
    "    return x[:,None] ** np.arange(M + 1)\n",
    "\n",
    "fig, axes = plt.subplots(2, 2, figsize=(10, 6))\n",
    "\n",
    "axes = axes.flatten()\n",
    "\n",
    "NN = [1, 2, 4, 25]\n",
    "\n",
    "for N, ax in zip(NN, axes):\n",
    "\n",
    "    # 生成 0，1 之间等距的 N 个 数\n",
    "    x_tr = np.linspace(0, 1, N+2)\n",
    "    x_tr = x_tr[1:-1]\n",
    "\n",
    "    # 计算 t\n",
    "    t_tr = np.sin(2 * np.pi * x_tr) + 0.25 * np.random.randn(N)\n",
    "\n",
    "    # 加正则项的解\n",
    "    M = 8\n",
    "    alpha = 5e-3\n",
    "    beta = 11.1\n",
    "    lam = alpha / beta\n",
    "\n",
    "    phi_x_tr = phi(x_tr, M)\n",
    "    A_0 = phi_x_tr.T.dot(phi_x_tr) + lam * np.eye(M+1)\n",
    "    y_0 = t_tr.dot(phi_x_tr)\n",
    "\n",
    "    # 求解 Aw=y\n",
    "    coeff = np.linalg.solve(A_0, y_0)[::-1]\n",
    "\n",
    "    f = np.poly1d(coeff)\n",
    "\n",
    "    # 绘图\n",
    "\n",
    "    xx = np.linspace(0, 1, 500)\n",
    "\n",
    "    # Bayes估计的均值和标准差\n",
    "    S = np.linalg.inv(A_0 * beta)\n",
    "\n",
    "    m_xx = beta * phi(xx, M).dot(S).dot(y_0)\n",
    "    s_xx = np.sqrt(1 / beta + phi(xx, M).dot(S).dot(phi(xx, M).T).diagonal())\n",
    "\n",
    "\n",
    "    ax.plot(x_tr, t_tr, 'co')\n",
    "    ax.plot(xx, np.sin(2 * np.pi * xx), 'g')\n",
    "    ax.plot(xx, f(xx), 'r')\n",
    "    ax.fill_between(xx, m_xx-s_xx, m_xx+s_xx, color=\"pink\")\n",
    "    ax.set_xlim(-0.1, 1.1)\n",
    "    ax.set_ylim(-1.5, 1.5)\n",
    "    ax.set_xticks([0, 1])\n",
    "    ax.set_yticks([-1, 0, 1])\n",
    "    ax.set_xlabel(\"$x$\", fontsize=\"x-large\")\n",
    "    ax.set_ylabel(\"$t$\", fontsize=\"x-large\")\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true
   },
   "source": [
    "上图是 $N = 1,2,4,25$ 时，使用线性基，方差的变化情况，红色部分的宽度表示两倍标准差。\n",
    "\n",
    "上面讨论的是 $\\beta$ 已知的情况，如果两者都不知道，那么我们与 [2.3.6](../Chap-02-Probability-Distributions/02-03-The-Gaussian-Distribution.ipynb#均值和方差都未知) 的情况一样，引入一个 `Gaussian-gamma` 分布，然后得到预测值的分布为学生 t 分布。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3.3.3 等价核"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "将线性基函数模型参数的后验均值带入模型：\n",
    "\n",
    "$$\n",
    "\\mathbf m_N = \\beta\\mathbf S_N\\mathbf\\Phi^\\top\\mathsf t\n",
    "$$\n",
    "\n",
    "我们有：\n",
    "\n",
    "$$\n",
    "y(\\mathbf{x, m}_N) \n",
    "= \\mathbf m_N^\\top \\mathbf{\\phi(x)} \n",
    "= \\beta \\mathbf{\\phi(x)}^\\top \\mathbf S_N\\mathbf\\Phi^\\top\\mathsf t \n",
    "= \\sum_{n=1}^N \\beta \\mathbf{\\phi(x)}^\\top \\mathbf S_N\\mathbf \\phi(\\mathbf x_n) t_n\n",
    "$$\n",
    "\n",
    "我们将$y$ 看成是一个 $t_n$ 的线性组合，我们有：\n",
    "\n",
    "$$\n",
    "y(\\mathbf{x, m}_N) = \\sum_{n=1}^N k(\\mathbf x, \\mathbf x_n) t_n\n",
    "$$\n",
    "\n",
    "其中：\n",
    "\n",
    "$$\n",
    "k(\\mathbf x, \\mathbf x') = \\beta \\mathbf{\\phi(x)}^\\top \\mathbf S_N\\mathbf \\phi(\\mathbf x')\n",
    "$$\n",
    "\n",
    "这就是所谓的平滑矩阵（`smoother matrix`）或者等价核（`equivalent kernel`）。上面的这种使用训练集预测值 $t_n$ 的线性组合的情况叫做线性平滑（`linear smoothers`）。\n",
    "\n",
    "注意每个等价核函数的计算要使用到训练集中的每个 $\\mathbf x_n$（因为 $\\mathbf S_N$）\n",
    "\n",
    "此外，我们有：\n",
    "\n",
    "$$\n",
    "{\\rm cov}[y(\\mathbf x), y(\\mathbf x')] = {\\rm cov}[\\mathbf{\\phi(x)}^\\top \\mathbf w, \\mathbf w^\\top \\mathbf{\\phi(x')} ] = \\mathbf{\\phi(x)}^\\top \\mathbf S_N \\mathbf{\\phi(x')} = \\beta^{-1} k(\\mathbf x, \\mathbf x')\n",
    "$$\n",
    "\n",
    "核函数表示两点间的距离远近，两个点如果核函数值大，则相关性高。\n",
    "\n",
    "我们可以将基函数的计算完全变成核函数的形式，因此，我们可以通过使用等价核，而不显式地引入基函数。\n",
    "\n",
    "在我们的模型中，可以证明，我们的等价核满足：\n",
    "\n",
    "$$\n",
    "\\sum_{n=1}^N k(\\mathbf x, \\mathbf x_n) = 1\n",
    "$$\n",
    "\n",
    "这里忽略证明的细节，从直觉上，我们如果让所有的 $t_n$ 等于 1，基函数中有一个常数项，然后训练集数目 $N$ 大于独立的基函数数目，那么预测值应该为 1，从而上面的式子成立。\n",
    "\n",
    "从一般意义上，我们的等价核可以改写为：\n",
    "\n",
    "$$\n",
    "k(\\mathbf x, \\mathbf z) = \\mathbf{\\psi(x)}^\\top \\mathbf \\psi(\\mathbf z)\n",
    "$$\n",
    "\n",
    "其中 \n",
    "\n",
    "$$\n",
    "\\mathbf{\\psi(x)} = \\beta^{1/2} \\mathbf S_N^{1/2} \\mathbf{\\phi(x)}\n",
    "$$"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.11"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}
